<?php

class C_Article extends Controleur {

    function afficher() {
        $this->vue->titreVue = 'Afficher un article';
        $lesArticles = new M_ListeArticles();
        $this->vue->article = $lesArticles->get($_GET['id']);
        $this->vue->afficher();
    }

    function index() {
        $this->vue->titreVue = "Liste des articles";
        $lesArticles = new M_ListeArticles();
        $this->vue->lesArticles = $lesArticles->getAll();
        $this->vue->afficher();
    }

    function modifier() {
        $this->vue->titreVue = "Modifier un article";
        $this->vue->actionSuivante = "valider_modification";
        $lesArticles = new M_ListeArticles();
        $this->vue->article = $lesArticles->get($_GET['id']);
        $this->vue->afficher();
    }

    function valider_modification() {
        $this->vue->titreVue = "Valider la modification d'un article";
        $lesArticles = new M_ListeArticles();
        // préparer la liste des paramètres
        $lesParametres = array();
        $lesParametres["id"] = $_GET["id"];          // identifiant de l"article
        // récupérer les données du formulaire
        $lesParametres["titre"] = $_POST["titre"];   // titre de l'article
        $lesParametres["texte"] = $_POST["texte"];  // texte de l'article
        $ok = $lesArticles->update($lesParametres["id"], $lesParametres);
        if ($ok) {
            $this->vue->message = "Article modifié";
        } else {
            $this->vue->message = "Echec de la modification de l'article";
        }
        $this->vue->afficher();
    }

    function ajouter() {
        $this->vue->titreVue = "Ajouter un article";
        $this->vue->actionSuivante = "valider_ajout";
        $this->vue->afficher();
    }

    function valider_ajout() {
        $this->vue->titreVue = "Valider l'ajout d'un article";
        $lesArticles = new M_ListeArticles();
        // préparer la liste des paramètres
        $lesParametres = array();
        // récupérer les données du formulaire
        $lesParametres[0] = $_POST["titre"];   // titre de l'article
        $lesParametres[1] = $_POST["texte"];  // texte de l'article
        $ok = $lesArticles->insert($lesParametres);
        if ($ok) {
            $this->vue->message = "Article ajouté";
        } else {
            $this->vue->message = "Echec de l'ajout de l'article";
        }
        $this->vue->afficher();
    }

    function supprimer() {
        $this->vue->titreVue = "Supprimer un article<br/>Confirmez-vous ?";
        $this->vue->actionSuivante = "valider_suppression";
        $lesArticles = new M_ListeArticles();
        $this->vue->article = $lesArticles->get($_GET['id']);
        $this->vue->afficher();
    }

    function valider_suppression() {
        $this->vue->titreVue = "Valider la suppression d'un article";
        $lesArticles = new M_ListeArticles();
        // préparer la liste des paramètres
        $ok = $lesArticles->delete($_GET["id"]);
        if ($ok) {
            $this->vue->message = "Article supprimé";
        } else {
            $this->vue->message = "Echec de la suppression de l'article";
        }
        $this->vue->afficher();
    }

}